<?php
namespace app\admin\controller;

use app\common\nimble\Logic as bLogic;
use app\common\nimble\Model as bModel;
use app\admin\nimble\Logic;
use app\admin\nimble\Model;
use think\App;
use think\Controller;
use think\Facade\Request;

class Base extends Controller
{
    protected $params;

    protected $returnStyle = 'blog';

//    protected $pageMsg = '{}';

    public function __construct(App $app = null)
    {
        parent::__construct($app);
        $this->params = $this->parseParams();
        // 将get请求参数传入前端
        $getPm = $this->request->get() + $this->request->route();
        $this->assign('getPm', json_encode($getPm));
//        $this->assign('pageMsg',$this->pageMsg);
    }

    // 解析参数
    protected function parseParams()
    {
        $data = Request::param(true);
        if (Request::header('Content-Type') == 'application/json') {
            $json = file_get_contents("php://input"); // 前端使用json格式传入数据
            $jsonArr = json_decode($json, true);
            $data = array_merge($data, $jsonArr);
        }
        // 请求的返回格式默认是bolg
        if (!empty($data['returnStyle'])) {
            $this->returnStyle = $data['returnStyle'];
            unset($data['returnStyle']);
        }
        // 是否有系统消息提示 废除 在前端使用cookie
//        if (!empty($data['pageMsg'])) {
//            // 页面信息解析规则
////            'msg:内容,5000';
////            'replay:标题,内容,1,5000';
//            $pageMsg = explode(':', $data['pageMsg']);
//            if (count($pageMsg) == 2) {
//                $pageMsgPm = explode(',', $pageMsg[1]);
//                $pageMsgArr = [];
//                switch ($pageMsg[0]) {
//                    case 'msg':
//                        $pageMsgArr['type'] = 'msg';
//                        $pageMsgPmList = ['content','time'];
//                        break;
//                    case 'reply':
//                        $pageMsgArr['type'] = 'reply';
//                        $pageMsgPmList = ['title','content','icon','time'];
//                        break;
//                }
//                foreach ($pageMsgPmList as $key => $name) {
//                    if ($pageMsgPm[$key]) {
//                        $pageMsgArr[$name] = $pageMsgPm[$key];
//                    }
//                }
//                $this->pageMsg = json_encode($pageMsgArr);
//            }
//            unset($data['pageMsg']);
//        }

        return $data;
    }


    // 页面基础信息在该文件直接实现
    /**
     * 头部的标题，描述，关键字
     * 左侧导航栏
     * 右侧的面包屑
     */

    // 载入逻辑链式操作
    public function bLogic()
    {
        $class = new bLogic();
        return $class;
    }

    // 载入模型链式操作
    public function bModel()
    {
        $class = new bModel();
        return $class;
    }

    // 载入逻辑链式操作
    public function logic()
    {
        $class = new Logic();
        return $class;
    }



}